perm filename ATABLE.SAI[E,ALS] blob
sn#121108 filedate 1974-09-25 generic text, type C, neo UTF8
COMMENT ⊗ VALID 00002 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00002 00002 Begin "ATABLE"
C00005 ENDMK
C⊗;
Begin "ATABLE"
DEFINE ⊂="COMMENT",CR="'15",LF="'12",CRLF="CR&LF",TB="'11";
DEFINE TTYUUO="'051000000000",SETACT="'051640000000";
INTEGER WORD,A,B,X;
INTEGER ARRAY BRKTAB[0:3];
LABEL ZOT,FOO;
WHILE TRUE DO BEGIN
START_CODE;
MOVEI 0,BRKTAB[0];
MOVEM 0,A;
END;
WORD ← -1; B←A LSH 18;
OUTSTR("A contains"&CVOS(A)&TB&"B contains"&CVOS(B)&CRLF);
QUICK_CODE
SETACT B; END; ⊂ This should return the old activation table;
OUTSTR("Initial BRKTAB in"&TB);
FOR X←0 STEP 1 UNTIL 3 DO OUTSTR(CVOS(BRKTAB[X])&TB); OUTSTR(CRLF);
BRKTAB[0]←'400360000000;
BRKTAB[1]←0;
BRKTAB[2]←0;
BRKTAB[3]←'000001000006;
OUTSTR("Set to activate only on NUL,LF,VT,FF,CR,ALT and all αβ controls"&CRLF);
OUTSTR("Disables control-carriage-return from giving back last line typed."&CRLF);
OUTSTR("Special bits only"&TB);
FOR X←0 STEP 1 UNTIL 3 DO OUTSTR(CVOS(BRKTAB[X])&TB); OUTSTR(CRLF);
QUICK_CODE
SETACT A; END; ⊂ This should set a new activation table;
FOR X←0 STEP 1 UNTIL 3 DO BRKTAB[X]←0;
OUTSTR("BRKTAB set to zero"&TB);
FOR X←0 STEP 1 UNTIL 3 DO OUTSTR(CVOS(BRKTAB[X])&TB); OUTSTR(CRLF);
QUICK_CODE
SETACT B; END; ⊂ This should return the old activation table;
OUTSTR("Activation returned"&TB);
FOR X←0 STEP 1 UNTIL 3 DO OUTSTR(CVOS(BRKTAB[X])&TB); OUTSTR(CRLF&LF);
QUICK_CODE
TTYUUO 6,WORD; END; OUTSTR(CVOS(WORD)&TB);
WORD←WORD XOR (1 LSH 24); OUTSTR(CVOS(WORD)&CRLF);
QUICK_CODE
TTYUUO 7,WORD; END;
OUTSTR(CRLF);
IF (WORD LAND (1 LSH 24))= 0 THEN OUTSTR("Not in activation mode.") else
OUTSTR("Is in activation mode.");
OUTSTR(CRLF&LF);
START_CODE;
TTYUUO 4,0;
TTYUUO 1,0;
FOO: TTYUUO 2,0;
JRST ZOT;
TTYUUO 1,0;
JRST FOO;
ZOT: END; ⊂ This code does an INCHWL directly as the SAI code does not work;
END; END;